package com.neusoft.classCH6;

import java.util.Scanner;

public class ClassMaster {
	
	//属性 一个班的学生
	Student[] stus ;
	
	//方法
	
	/**
	 * 初始化学生数组
	 */
	public void initializeStus() {
		//确定学生人数
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入学生人数");
		int stuNum = sc.nextInt();
		
		//初始化学生数组
		stus = new Student[stuNum];
		
		//用变量接收学生信息
		String stuName;
		String StuNo;
		int  stuScore;
		
		
		
		//给每个学生填入信息
		for(int i= 0;i<stuNum;i++) {
			//输入信息
			System.out.println("请输入"+(i+1)+"第个学生的姓名");
			stuName = sc.next();
			System.out.println("请输入"+(i+1)+"第个学生的学号");
			StuNo = sc.next();
			System.out.println("请输入"+(i+1)+"第个学生的成绩");
			stuScore =sc.nextInt();
			//建立学生对象
			stus[i] = new Student(stuName, StuNo, stuScore);
			System.out.println("是否需要暂停退出（yes no）");
			if(sc.next().equals("yes")) {
				System.out.println("初始化学生成绩已退出");
				break;
			}
			
		}
	}
	
	/**
	 * 对班里学生成绩排序
	 */
	public void scoreSort() {
		// 定义中间变量
		Student studenttemp = new Student();
		if(stus!=null&&stus.length>0) {
		// 插入排序
		for (int i = 1; i < stus.length; i++) {
			for (int j = i-1; j >=0; j--) {
				// 如果后面的成绩高往前移
				if (stus[j + 1].getScore() > stus[j].getScore()) {
					studenttemp = stus[j + 1];
					stus[j + 1]=stus[j];
					stus[j]=studenttemp;
				} else {
					continue;
				}
			}
		}
		}else {
			System.out.println("没有学生信息，无法排序");
		}
	}
	
	
	/**
	 * 打印学生信息
	 */
	public void printAllStudentInfo() {
		if(stus!=null&&stus.length>0) {
		for(int i=0;i<stus.length;i++) {
			stus[i].printStuInfo();
		}
		}else {
			System.out.println("没有学生信息，无法打印");
		}
	}
	
	
	
}
